Telegram Group & Telegram Channel
Максимально очевидні речі про які мені здається треба постійно нагадувати

You may have felt it. From chatting apps such Teams or discord, to browsers like Chrome and Firefox, and even Gaming. Software feels sluggish and slow even on most beefy hardware.
While hardware has gotten better, Software has gotten somehow slower. I explore why I think this is in this post.
ICQ vs Teams
While it might not be a fair comparison, I can’t help but compare the basic chatting feature of ICQ from 20 years ago to Microsoft Teams today. True, Teams has more features and secure by default, but the basic chatting feature and responsiveness and performance goes to ICQ.
I still remember running ICQ on my intel 90 MHz (yes M not G) 1 core 64 MB RAM, Windows 95 and it instantly starts up, and chat just works.
Teams on the other hand takes seconds to sometimes minutes to start and hangs often on my 64GB Intel 3.0GHz 16 Core. I think you may relate this to most modern software.
Netscape vs Chrome
If you double click on your browser icon today to run it, I can guarantee that you are conditioned to wait few seconds for it to spin up. This is now considered the norm.
This isn’t how it used to be.
If you grew up in the 90s early 2000s, and used Netscape or even Internet Explorer 6, you would know that browsers start instantly.
There was another even faster alternative back then called Crazy Browser which supported tabs.
Granted loading speed depended on your Internet and the page you were loading. But assets too were cheaper back then.
Why classic software felt faster?
Software in the 90s and early 2000s were developed under highly constrained environment and as a result it was forced to produce efficient programs.
If there was a memory leak, you will notice it immediately or the process will run out of memory, sometimes it won’t even start, forcing you to fix it. You couldn't afford a memory leak.
If there was a high CPU usage your program would freeze forcing you to rewrite to use less cpu if possible or think outside the box to work within the constraints.
Writing was expensive, there was only HDD and floppy, so the programmer calling write() of fsync() would immediately feel the cost. So you would only call write when you need it. Same story for read
Storage used to be scarce, so programmers would do everything to make the footprint of the program as small as possible. Smaller binary = faster loading.
Can we say the same for modern software?
Modern Development
I might be wrong, but I think most bloat in modern apps stems from the development on high-end machines, which masks inefficiencies in code.
Sadly modern IDEs and dev tooling require top-end dev machines as they too use a lot of resources.
It’s a double bind.
With abundant memory and compute in modern hardware the inefficiency is masked. Causing bad code to be shipped and eventually encountered under stress often in production.
If you wrote inefficient code on old hardware, your program might not run at all, forcing you to revise, troubleshoot, finesse and fix. That is because of the limited resources.
I sometimes wonder how efficient modern apps would be if they were developed under similar constraints, it would force us to favor efficiency in coding. Memory leaks/high cpu usage that would have otherwise gone undetected because of resource abundance would have been flagged during dev.
Of course, I'm not advocating not using modern hardware, on the contrary I think if we relearned how to be efficient we could take full advantage of modern hardware. Moreover, a bump in resource requirements for software may be necessary to unlock certain features, but I don’t think we have a clear grasp on that line.
Perhaps we can develop on modern hardware but we dedicate running tests on low-end devices as part of the development cycle.

сурс



tg-me.com/progromizdshitpost/1384
Create:
Last Update:

Максимально очевидні речі про які мені здається треба постійно нагадувати

You may have felt it. From chatting apps such Teams or discord, to browsers like Chrome and Firefox, and even Gaming. Software feels sluggish and slow even on most beefy hardware.
While hardware has gotten better, Software has gotten somehow slower. I explore why I think this is in this post.
ICQ vs Teams
While it might not be a fair comparison, I can’t help but compare the basic chatting feature of ICQ from 20 years ago to Microsoft Teams today. True, Teams has more features and secure by default, but the basic chatting feature and responsiveness and performance goes to ICQ.
I still remember running ICQ on my intel 90 MHz (yes M not G) 1 core 64 MB RAM, Windows 95 and it instantly starts up, and chat just works.
Teams on the other hand takes seconds to sometimes minutes to start and hangs often on my 64GB Intel 3.0GHz 16 Core. I think you may relate this to most modern software.
Netscape vs Chrome
If you double click on your browser icon today to run it, I can guarantee that you are conditioned to wait few seconds for it to spin up. This is now considered the norm.
This isn’t how it used to be.
If you grew up in the 90s early 2000s, and used Netscape or even Internet Explorer 6, you would know that browsers start instantly.
There was another even faster alternative back then called Crazy Browser which supported tabs.
Granted loading speed depended on your Internet and the page you were loading. But assets too were cheaper back then.
Why classic software felt faster?
Software in the 90s and early 2000s were developed under highly constrained environment and as a result it was forced to produce efficient programs.
If there was a memory leak, you will notice it immediately or the process will run out of memory, sometimes it won’t even start, forcing you to fix it. You couldn't afford a memory leak.
If there was a high CPU usage your program would freeze forcing you to rewrite to use less cpu if possible or think outside the box to work within the constraints.
Writing was expensive, there was only HDD and floppy, so the programmer calling write() of fsync() would immediately feel the cost. So you would only call write when you need it. Same story for read
Storage used to be scarce, so programmers would do everything to make the footprint of the program as small as possible. Smaller binary = faster loading.
Can we say the same for modern software?
Modern Development
I might be wrong, but I think most bloat in modern apps stems from the development on high-end machines, which masks inefficiencies in code.
Sadly modern IDEs and dev tooling require top-end dev machines as they too use a lot of resources.
It’s a double bind.
With abundant memory and compute in modern hardware the inefficiency is masked. Causing bad code to be shipped and eventually encountered under stress often in production.
If you wrote inefficient code on old hardware, your program might not run at all, forcing you to revise, troubleshoot, finesse and fix. That is because of the limited resources.
I sometimes wonder how efficient modern apps would be if they were developed under similar constraints, it would force us to favor efficiency in coding. Memory leaks/high cpu usage that would have otherwise gone undetected because of resource abundance would have been flagged during dev.
Of course, I'm not advocating not using modern hardware, on the contrary I think if we relearned how to be efficient we could take full advantage of modern hardware. Moreover, a bump in resource requirements for software may be necessary to unlock certain features, but I don’t think we have a clear grasp on that line.
Perhaps we can develop on modern hardware but we dedicate running tests on low-end devices as part of the development cycle.

сурс

BY Прога від НЕпрогера


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/progromizdshitpost/1384

View MORE
Open in Telegram


PROGROMIZDSHITPOST Telegram Group Telegram | DID YOU KNOW?

Date: |

To pay the bills, Mr. Durov is issuing investors $1 billion to $1.5 billion of company debt, with the promise of discounted equity if the company eventually goes public, the people briefed on the plans said. He has also announced plans to start selling ads in public Telegram channels as soon as later this year, as well as offering other premium services for businesses and users.

How Does Bitcoin Work?

Bitcoin is built on a distributed digital record called a blockchain. As the name implies, blockchain is a linked body of data, made up of units called blocks that contain information about each and every transaction, including date and time, total value, buyer and seller, and a unique identifying code for each exchange. Entries are strung together in chronological order, creating a digital chain of blocks. “Once a block is added to the blockchain, it becomes accessible to anyone who wishes to view it, acting as a public ledger of cryptocurrency transactions,” says Stacey Harris, consultant for Pelicoin, a network of cryptocurrency ATMs. Blockchain is decentralized, which means it’s not controlled by any one organization. “It’s like a Google Doc that anyone can work on,” says Buchi Okoro, CEO and co-founder of African cryptocurrency exchange Quidax. “Nobody owns it, but anyone who has a link can contribute to it. And as different people update it, your copy also gets updated.”

PROGROMIZDSHITPOST Telegram Group from es


Telegram Прога від НЕпрогера
FROM USA